package hot.hash;

import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;

public class A202 {
    Set<Integer> set;
    public boolean isHappy(int n) {
        //先将本次的数字存
      this.set=new HashSet<>();
        //当一个数出现在map集合里，说明他回到了起点，无限循环返回false
        return  f(n);
    }
    boolean f(int n){
if(set.contains(n))return false;
if(n==1)return true;
int a=0;
int temp;

while(n>0){
    temp=n%10;
    a+=temp*temp;
    n/=10;
}
return f(a);
    }
}
